package GraphTheoryTools;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;

public class ConnectedGraph {
//
//	private class Node
//	{
//		
//		private int VisitorCounter = 0;
//		public Node(String Id)
//		{
//			m_sId  = Id;
//			ConnectedNighbors  = new HashMap<String,Node>();
//		}
//		public String m_sId =""; 
//		HashMap<String,Node> ConnectedNighbors ;
//		
//		public void AddConnection( Node NewNeighbor)
//		{
//			ConnectedNighbors.put(NewNeighbor.m_sId , NewNeighbor);
//		}
//		
//		public void RemoveConnection( Node NewNeighbor)
//		{
//			ConnectedNighbors.put(NewNeighbor.m_sId , NewNeighbor);
//		}
//		
//		public boolean IsConnected(String sOtherNodeId)
//		{
//			if(VisitorCounter >0)
//				return false;
//			
//			VisitorCounter++;
//			if(m_sId.equals(sOtherNodeId) )
//			{
//				return true;	
//			}
//			
//			if(ConnectedNighbors.isEmpty())
//			{
//				return false;
//			}
//			
//			
//			Iterator iter = ConnectedNighbors.keySet().iterator();
//			
//			
//			while(iter.hasNext()) {
//
//				String key = (String )iter.next();
//				Node OtherNode =  (Node )ConnectedNighbors.get(key);
//				if(OtherNode.IsConnected(sOtherNodeId)
//						return true;
//				
//			}			
//			return false;			
//		}
//	}
	
}
